package models

import (
	"time"

	"gorm.io/gorm"
)

// Employee 员工模型
type Employee struct {
	gorm.Model
	Name        string `json:"name"`
	Department  string `json:"department"`
	Position    string `json:"position"`
	PhoneNumber string `json:"phone_number"`
	Email       string `json:"email"`
	Preferences string `json:"preferences"` // JSON格式存储排班偏好
}

// Product 产品模型
type Product struct {
	gorm.Model
	Name        string `json:"name"`
	Description string `json:"description"`
}

// Shift 班次模型
type Shift struct {
	gorm.Model
	Name        string    `json:"name"`
	StartTime   time.Time `json:"start_time"`  // 每天的上班时间
	EndTime     time.Time `json:"end_time"`    // 每天的下班时间
	IsFullDay   bool      `json:"is_full_day"` // 是否为全天班次
	Description string    `json:"description"`
	ProductID   uint      `json:"product_id"`
	ProductName string    `json:"product_name"`
}

// Schedule 排班表模型
type Schedule struct {
	gorm.Model
	EmployeeID uint      `json:"employee_id"`
	ShiftID    uint      `json:"shift_id"`
	Date       time.Time `json:"date"`
	Status     string    `json:"status"` // 已排班、待确认等状态
}
